-
-
Notifications
You must be signed in to change notification settings - Fork 30.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add option to disable keep-alive for Enphase Envoy connections #127603
base: dev
Are you sure you want to change the base?
Conversation
Hey there @bdraco, @cgarwood, @joostlek, mind taking a look at this pull request as it has been labeled with an integration ( Code owner commandsCode owners of
|
Please take a look at the requested changes, and use the Ready for review button when you are done, thanks 👍 |
I wonder if we should do this by default given how bad the firmware on these devices can be. Do we have a minimum known good firmware version or are they all the firmwares newer than 3.x subject to this issue? |
Not really. This was for 3.18.10. If I recall correctly yours is like 3.9.x and not showing the issue like this report? So it may be mixed. No further clear reports, but of course often reports of not well understood communication issues across many firmware version. This may be an underlying cause for some of those as well.
Didn't want to make that big a change without more run-time. Now we have the option available to recommend trying in other communication issues as well. Based on that experience we may then make it default choice in a future release. |
Proposed change
Add configuration option to Enphase Envoy integration to allow disabling keep-alive on the httpx connections to the Envoy. The option is disabled by default, user can enable it
Envoy firmware 3.18.10 observations show that obtaining data from the endpoint /api/v1/production/inverters is prone to failures with connection pool enabled. Until now this is the only firmware reporting this.
Observations from network packet traces:
Test shows that setting the client to max_keepalive_connections=0 solves the issue.
Test with a recent ENVOY standard non-metered firmware 8.2.4264 using the disable keep-alive show no issues.
It is not clear if this is an httpx issue or not, the question is raised. As the firmware is pretty old fixes to httpx may not apply or not occur. It will take time for sure, for now adding the option will solve the issue for the HA user on short notice.
Type of change
Additional information
Checklist
ruff format homeassistant tests
)If user exposed functionality or configuration variables are added/changed:
If the code communicates with devices, web services, or third-party tools:
Updated and included derived files by running:
python3 -m script.hassfest
.requirements_all.txt
.Updated by running
python3 -m script.gen_requirements_all
.To help with the load of incoming pull requests: